package com.zhentao.pojo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.util.Date;
import java.util.List;

import com.zhentao.dto.UserDto;
import lombok.Data;

/**
 * 商品评价表
 * @TableName product_review
 */
@TableName(value ="product_review")
@Data
public class ProductReview {
    /**
     * 评价ID（唯一标识）
     */
    @TableId(type = IdType.AUTO)
    private Long reviewId;

    /**
     * 商品ID（关联商品）
     */
    private Long productId;

    /**
     * 用户ID（评价发起用户）
     */
    private Long userId;

    /**
     * 订单ID（评价关联的订单，确保真实购买）
     */
    private Long orderId;

    /**
     * 星级评分(1-5分，评价核心分数)
     */
    private Integer scoreStar;

    /**
     * 评价类型(1-好评;2-中评;3-差评)
     */
    private Integer reviewType;

    /**
     * 评价内容（用户输入的评价文本）
     */
    private String content;

    /**
     * 评价时间
     */
    private Date reviewTime;

    /**
     * 是否匿名(0-否;1-是，保护用户隐私)
     */
    private Integer isAnonymous;

    /**
     * 评价用户
     */
    @TableField(exist = false)
    private UserDto user;

    /**
     * 评价图片
     */
    @TableField(exist = false)
    private List<ReviewImage> reviewImages;
}